iT邦幫忙

2024 iThome 鐵人賽

DAY 21
0
自我挑戰組

初學者學習到的JavaScript 知識系列 第 21

鐵人賽DAY21-字節流與字元流

  • 分享至 

  • xImage
  •  

I/O操作裡分為字節流(Byte Stream)和字元流(Character Stream)兩大類。它們都用來讀取和寫入數據,但處理的數據類型不同。
1.字節流(Byte Stream)
字節流用來處理二進位數據(以字節(8位元)為單位的數據)。適合處理所有類型的數據,包括圖片、音訊、視訊和文本文件(特別是未經編碼的文本數據)。
字節流的基本類有InputStream用來讀取;OutputStream用來寫入

常用字節流類:
FileInputStream/FileOutputStream:從文件中讀取字節和將字節寫入文件
BufferedInputStream/BufferedOutputStream:為輸入流/輸出流提供緩衝功能,提高效率。

2.字元流(Character Stream)
用來處理文本數據,即處理Unicode字符。以字元(16位元)為單位,適合處理編碼的文本文件。字元流在讀取時會自動將字節解碼為字元,寫入時會將字元編碼為字節。
字元流的基本類有Reader用來讀取字元;Writer用來寫入字元

常用字元流類:
FileReader/FileWriter:用來從文件讀取字元,和把字元寫入文件
BufferedReader/BufferedWriter:為讀取及寫入字元流提供緩衝功能,提升性能。

字節流與字元流的對比
字節流(Byte Stream)
1.處理的是原始字節數據
2.適合處理所有類型的數據,特別是二進位文件
3.主要類是InputStream和OutputStream
4.沒有自動編碼/解碼字元功能

字元流(Character Stream)
1.處理的是字元數據
2.適合處理文本文件,特別是需要考慮字元編碼的場景
3.主要類是Reader和Writer
4.有自動編碼/解碼字元功能


上一篇
鐵人賽DAY20-文件I/O
下一篇
鐵人賽DAY22-緩衝流
系列文
初學者學習到的JavaScript 知識23
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言